import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import axios from "axios";
import ElementUI from 'element-ui';
//引入element-ui样式
import "element-ui/lib/theme-chalk/index.css";

//全局过滤器
import enumsFilter from "../public/common/js/enumsFilter";

//使用ElementUI
Vue.use(ElementUI);

//阻止显示生产模式的消息
Vue.config.productionTip = false
//配置vue全局变量：任意组件--》this.$ajax可使用axios
Vue.prototype.$axios=axios;
//vue全局组件监听事件总线，所有组件发送请求都必须经过这个总线$event
Vue.prototype.$event=new Vue();

//增加enumsFilter全局过滤器(js)：用于下拉框type的显示效果
Object.keys(enumsFilter).forEach(key=>{
  Vue.filter(key,enumsFilter[key]);
})

//每次请求携带证书credential：解决前后端分离，每次请求sessionId不同（验证码+登录问题，需要相同验证码）
axios.defaults.withCredentials=true;

//axios请求日志拦截
axios.interceptors.request.use(function (request) {
  return request;
},error => {
  console.log("请求失败failed");
})
//axios响应日志拦截
axios.interceptors.response.use(function (response) {
  return response;
},error => {
  console.log("响应失败error");
})

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')

console.log("全局dev/prod环境配置: ", process.env.NODE_ENV);
console.log("全局dev/prod环境前缀: ", process.env.VUE_APP_SERVER);
